package com.qigao.mall.api;

import com.github.pagehelper.Page;
import com.qigao.mall.commons.dto.ItemQueryPageDto;
import com.qigao.mall.commons.dto.ItemUpdateDto;
import com.qigao.mall.commons.dto.ItemResultDto;
import com.qigao.mall.commons.dto.OpenShopDto;
import com.qigao.mall.commons.enums.Result;
import com.qigao.mall.commons.enums.SaleProductEnum;

import java.util.List;

/**
 * @author luiz
 * @Title: com.qigao.mall.api
 * @ProjectName three-mall
 * @date 2019-11-2019/11/1 14:05
 * @Description:商品服务相关
 */
public interface ItemService {
    /**
     * 按照关键字搜索商品信息
     * @param itemQueryPageDto 商品关键字
     * @return
     */
    Page<ItemResultDto> search(ItemQueryPageDto itemQueryPageDto);

    List<ItemResultDto> showItemByCatNo(String catNo, String status);

    /**
     * 新增商品
     * @param itemCreateDto
     */
    void addGoods(ItemUpdateDto itemCreateDto);

    void modiGoods(ItemUpdateDto itemCreateDto);

    List<ItemResultDto> randomItem(String shopNo);

    void deleteById(String id);

    void upOrDown(String itemNo);

    Result<List<ItemResultDto>> findGoodsByStatus(String shopNo, String status);

    Result<ItemResultDto> findGoodsByItemNo(String itemNo);

    void deleteByItemNo(String itemNo);

    void saveSaleProduct(OpenShopDto openShopDto, SaleProductEnum commonShop);
}
